package com.klikmee.sms.core.base.creators;

import com.klikmee.sms.core.model.IncomingMessage;
import com.klikmee.sms.core.model.ServiceChargingCategory;
/**
 * Component responsible for creating charged messages.  
 *
 */
public interface MessageCreator {

	/**
	 * Creates response message for customers request.
	 * Underlying implementation should create new payment invoice for outgoing message.
	 * 
	 * @param incomingMessage message to create response to
	 * @param serviceChargingCategory charging id
	 * 
	 * @return core id of the newly created response message
	 */

	public Long createResponse( IncomingMessage incomingMessage, ServiceChargingCategory charging, String responseText );

}